package com.youmu.sichuansfc.dao;

import com.youmu.sichuansfc.domain.YoumuFundManager;
import com.youmu.sichuansfc.dto.PageT;
import com.youmu.sichuansfc.dto.fund.FundManagerDto;

import java.util.Calendar;
import java.util.List;

public interface FundManagerDao {

    /**
     *  查询
     * @param status
     * @param fundName
     * @param num
     * @param size
     * @return
     */
    public PageT findBy(Integer status, String fundName,  int num, int size);

    /**
     *  上传
     * @param youmuFundManager
     * @return
     */
    public YoumuFundManager upload(YoumuFundManager youmuFundManager);

    /**
     *  查询 该fundUserId 关联的所有基金管理人
     * @param fundUserId
     * @return
     */
    public List<YoumuFundManager> findByFundUserId(long fundUserId);

    /**
     * 查询 基金管理人
     * @param investType
     * @param fundManagerName
     * @param num
     * @param size
     * @return
     */
    public PageT funmanagers(Integer investType, String fundManagerName, int num, int size);

    /**
     *  查询
     * @param id
     * @return
     */
    public FundManagerDto findById(Long id);

    /**
     *  更具名称查询
     * @param name
     * @return
     */
    public YoumuFundManager findByName(String name);
    /**
     * 查询新增管理人
     * @param startTime
     * @param endTime
     * @return
     */
    public List<YoumuFundManager> findByTime(Calendar startTime, Calendar endTime);

    /**
     *  查询该账户下所有管理人资料
     * @param fundUserId 管理人账号
     * @param num
     * @param size
     * @return
     */
    PageT findByFundUser(Long fundUserId, int num, int size);
}
